package code;

import com.sun.org.apache.regexp.internal.RE;

import java.util.Arrays;

/**
 * author : yeswater
 * date : 2023/11/29
 * 
 * 减小和重新排序数组后的最大元素
 *      arr 的第一个元素必须为 1
 *      响铃元素大小差距小于 1
 *  
 *  可以执行的操作:
 *      减小 arr 中任意元素的值 为正整数
 *      重新排序 arr 中的元素
 *      
 *  最后返回 arr 中可能得最大值
 */     

public class T1846 {
    public static void main(String[] args) {
        int[] arr =  new int[]{};
        System.out.println(func(arr));
    }

    /**
     * 分析:
     *      
     * @param arr
     * @return
     */
    public static int func(int[] arr) {
        Arrays.sort(arr);
        arr[0] = 1;
        int res = 1;
        for (int i = 1; i < arr.length; i++) {
            // next gt before
            if (arr[i] > arr[i-1]) {
                res += 1;
                arr[i] = arr[i-1] + 1;
            }
        }
        return res;
    }
    
}
